package com.office.forum.manage.article.service;

import java.util.List;
import com.office.forum.manage.article.domain.ForumPosts;
import com.office.forum.manage.category.domain.ForumPostCategory;
import org.apache.ibatis.annotations.Param;

/**
 * 帖子Service接口
 * 
 * @author ruoyi
 * @date 2025-05-16
 */
public interface IForumPostsService 
{
    /**
     * 查询帖子
     * 
     * @param postId 帖子主键
     * @return 帖子
     */
    public ForumPosts selectForumPostsByPostId(Long postId);

    /**
     * 查询帖子列表
     * 
     * @param forumPosts 帖子
     * @return 帖子集合
     */
    public List<ForumPosts> selectForumPostsList(ForumPosts forumPosts);

    /**
     * 新增帖子
     * 
     * @param forumPosts 帖子
     * @return 结果
     */
    public int insertForumPosts(ForumPosts forumPosts);

    /**
     * 修改帖子
     * 
     * @param forumPosts 帖子
     * @return 结果
     */
    public int updateForumPosts(ForumPosts forumPosts);

    /**
     * 批量删除帖子
     * 
     * @param postIds 需要删除的帖子主键集合
     * @return 结果
     */
    public int deleteForumPostsByPostIds(Long[] postIds);

    /**
     * 删除帖子信息
     * 
     * @param postId 帖子主键
     * @return 结果
     */
    public int deleteForumPostsByPostId(Long postId);

    List<ForumPostCategory> getCategoryName();

    public List<ForumPosts> selectForumPostsByUserId(@Param("userId") Long userId);

    /**
     * id批量查询收藏的帖子
     */
    List<ForumPosts> getPostsByIds(List<Long> postIds);
}
